Pular para o conteúdo principal

Anotações

Para que servem as anotações?

  • As anotações em Java são marcadores especiais que fornecem metadados sobre elementos do código-fonte. Elas são introduzidas com o símbolo "@". Eles fornecem informações adicionais que podem ser interpretadas pelo compilador, pelo tempo de execução ou por ferramentas externas.

Anotações da ItsMagic

@AutoWired

  • Busca e anexa o componente no próprio objeto que o script está presente.

Exemplo

public class SuaClasse extends Component {

// cria um novo Rigidbody, @Autowired seleciona o componente desde objeto
@AutoWired
private Rigidbody rigidbody;

@Override
public void repeat() {

// verificando se a tela foi pressionada e o Rigidbody é diferente de nulo
if (Input.getTouch(0).isDown() && rigidbody != null) Console.log("Rigidbody encontrado!"); // mostrando uma mensagem no terminal caso a condicional seja verdadeira
}
}

@Singleton

  • Busca e anexa o componente ao primeiro componente do mesmo tipo que for encontrado na cena.

Exemplo

public class SuaClasse extends Component {

// cria um novo SUIText, @Singleton seleciona o primeiro componente que encontrar na cena
@Singleton
private SUIText texto;

@Override
public void repeat() {

// verificando se a tela foi pressionada e o SUIText é diferente de nulo
if (Input.getTouch(0).isDown() && texto != null) Console.log("SUIText encontrado!"); // mostrando uma mensagem no terminal caso a condicional seja verdadeira
}
}

@Hide

  • Oculta variáveis no inspetor (propriedades do script).

Exemplo

public class SuaClasse extends Component {

// cria um novo valor flutuante, @Hide oculta a variavel no inspetor (propriedades do script)
@Hide
public float valor = 10f;
}

@Order

  • Ordena as variáveis de acordo com a posição definida.

Exemplo

public class SuaClasse extends Component {

// cria um novo valor flutuante, @Order define a posição da variável no inspector para -1
@Order(idx=-1)
public float valor1 = 1f;

// cria um novo valor flutuante, @Order define a posição da variável no inspector para 0
@Order(idx=0)
public float valor2 = 2f;

// cria um novo valor flutuante, @Order define a posição da variável no inspector para 1
@Order(idx=1)
public float valor3 = 3f;

// cria um novo valor flutuante, @Order define a posição da variável no inspector para -2
@Order(idx=2)
public float valor4 = 4f;
}

@ReadOnly

  • Impede que o valor da variável seja alterado pelo inspetor (proriedades do script).

Exemplo

public class SuaClasse extends Component {

// cria um novo valor flutuante, @ReadOnly impede que o valor da variável seja alterado pelo inspetor (proriedades do script)
@ReadOnly
public float valor = 10f;
}